當前位置:

奮戰的日子 ——AMD加速計算競賽征戰記


     聽到我們S.T.A.R.S團隊在第三屆AMD中國高校加速計算競賽中獲得冠軍的消息,我們懸著的心終于放下了。回首過去8個月奮戰的日子,我們深有感觸,那些煉鐵成鋼的經歷讓人難忘。


取 石
     從朱虎明老師那里得知AMD舉辦2010中國高校加速計算競賽的消息,正值學校放暑假的日子。一打開大賽的官方主頁,GPU、OpenCL等一些新鮮詞映入眼簾,富有挑戰性的參賽命題,很快吸引了我的眼球。由于研究生階段科研方向是高性能計算,我所在的智能感知與圖像理解教育部重點實驗室也有豐富的軟硬件資源,于是,我毅然決定報名參賽。
     這次競賽包括初賽、復賽和決賽三個階段,命題范圍為各類算法在GPU上相對于CPU的加速實現。在初賽階段,各參賽隊伍在大賽官網上報名并提交了完整的設計方案和CPU實現代碼。經過篩選,在創新性、技術難度等方面表現突出的優秀設計方案進入復賽。復賽階段,由組委會提供顯卡和技術專家支持,各復賽隊伍必須在規定時間內提交GPU源代碼及測試數據、PPT、論文等相關文檔。進入決賽的優勝隊伍需進一步優化代碼并做好項目演示準備,經過答辯和專家評審最終確定前四強的排名。


熾 煉
    緊鑼密鼓的隊員召集和方案設計工作開始了。李玉寬在VisualStudio環境下程序開發方面有深厚的基礎,可以負責程序代碼的編寫。鄭小皇的研究方向是比較前沿的排序學習,可以負責算法的設計。我善于邏輯思維和文字組織,可以負責數據準備和文檔撰寫。因此,我們的初步構想是利用GPU加速實現排序學習算法。就這樣,一個嶄新的S.T.A.R.S(取義 “SpecialTacticsandRescueSer-vice”)團隊宣告誕生了。緊接著,我們分工協作搜集各方面資料,提出了在GPU上實現并行支撐矢量機優化排序學習的構想,論證了方案的可行性,給出了算法的CPU實現代碼和完整的論文架構,順利拿到了初賽資格。


淬 火
    啃資料階段艱難而漫長。GPU加速計算是前沿領域,OpenCL標準的提出和ATIStreamSDK架構的搭建對于我們來說也是陌生的。但是,以實驗室的圖像處理、自然計算和機器學習三大研究方向為依托,我們可以發揮我們在算法設計方面的優勢,著重考慮加速計算方案的實現。曾幾何時,我們泡在高性能實驗室,不管高溫酷暑;曾幾何時,我們埋首于工作站案前,不管風吹日曬;曾幾何時,我們醉心于編程和調試,不管世事浮華。一步一個腳印,我們對GPU加速計算的認識從無到有,逐步深入。一個個難關被攻克后,我們拭干汗水,向下一個難關邁進。AMD公司為我們提供了優質的顯卡資源和OpenCL異構平臺,實驗室為我們提供了良好的實驗環境,而我們又有集凝聚力和戰斗力為一體的溫馨團隊,我們知道,我們一定得走下去。


成 鋼
    進入復賽,我們已異常興奮,而躋身12強進入決賽,我們更欣喜若狂了。我們知道,我們的努力沒有白費,榮譽只屬于有準備的人。我們咬緊牙關,進一步完善了整個加速算法的框架,在獲得良好的排序結果的同時實現了較為可觀的加速性能。從論文、PPT、軟件說明等文檔的每個細節的準備,到各個程序模塊的調試,我們一遍一遍地修改,查遍了所有可以優化的方案。終于,榮耀向我們敞開了懷抱。那一刻,激動的心情不禁化作勝利的淚水。
                                   (作者系S.T.A.R.S團隊負責人 電子工程學院  莊 雄

來源:西電科大報  http://paper.xde6.net/html/xdpaper/20101204/xdpaper3247.html